//CHART_REPO := http://jenkins-chartmuseum:8080
CURRENT=$(pwd)
NAME := $(FILE_NAME)
OS := $(shell uname)
RELEASE_VERSION := $(shell cat ../../VERSION)
DEPLOY_ALIYUN := $(ALIYUN)

build: clean
	rm -rf requirements.lock
	helm dependency build
	helm lint

install: clean build
	helm install . --name ${r'${NAME}'}

upgrade: clean build
	helm upgrade ${r'${NAME}'} .

delete:
	helm delete --purge ${r'${NAME}'}

clean:
	rm -rf charts
	rm -rf ${r'${NAME}'}*.tgz

release: clean
	helm dependency build
	helm lint
	helm init --client-only --stable-repo-url=${r'${CHARTMUSEUM_REPO}'}
	helm package .
	curl --fail -u $(CHARTMUSEUM_CREDS_USR):$(CHARTMUSEUM_CREDS_PSW) --data-binary "@$(NAME)-$(shell sed -n 's/^version: //p' Chart.yaml).tgz" $(CHARTMUSEUM_REPO)/api/charts
ifeq ($(DEPLOY_ALIYUN),true)	
	curl --fail -u $(CHARTMUSEUM_CREDS_USR):$(CHARTMUSEUM_CREDS_PSW) --data-binary "@$(NAME)-$(shell sed -n 's/^version: //p' Chart.yaml).tgz" $(ALIYUN_CHARTMUSEUM_REPO)/api/charts
endif
	rm -rf ${r'${NAME}'}*.tgz%

tag:
ifeq ($(OS),Darwin)
	sed -i "" -e "s/version:.*/version: $(RELEASE_VERSION)/" Chart.yaml
	sed -i -e "s/appVersion:.*/appVersion: $(RELEASE_VERSION)/" Chart.yaml
	sed -i "" -e "s/tag: .*/tag: $(RELEASE_VERSION)/" values.yaml
	sed -i -e "s/existingClaim:.*/existingClaim: $(NAMESPACE)-pvc/" values.yaml	
else ifeq ($(OS),Linux)
	sed -i -e "s/version:.*/version: $(RELEASE_VERSION)/" Chart.yaml
	sed -i -e "s/appVersion:.*/appVersion: $(RELEASE_VERSION)/" Chart.yaml
	sed -i -e "s|repository:.*|repository: $(DOCKER_REGISTRY)\/$(ORG)\/$(NAME)|" values.yaml
	sed -i -e "s/tag: .*/tag: $(RELEASE_VERSION)/" values.yaml
	sed -i -e "s/existingClaim:.*/existingClaim: $(NAMESPACE)-pvc/" values.yaml	
else
	echo "platfrom $(OS) not supported to release from"
	exit -1
endif
	git add --all
	git commit -m "release $(RELEASE_VERSION)" --allow-empty # if first release then no verion update is performed
	git tag -fa v$(RELEASE_VERSION) -m "Release version $(RELEASE_VERSION)"
	git push origin v$(RELEASE_VERSION)
